home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ian & Stuart's Australian Mac: Not for Sale
/
Another.not.for.sale (Australia).iso
/
Dr. Doyle
/
The-Five-Great-Inventions-of-T
< prev
next >
Wrap
Text File
|
1994-09-24
|
25KB
|
555 lines
The Five Great Inventions of Twentieth Century Cryptography
By William Hugh Murray
Information System Security
Consultant to Deloitte & Touche
WHMurray@DOCKMASTER.NCSC.MIL
203-761-3088 (Voice Mail)
203-834-2200 (FAX)
Preface
[This talk was presented as the keynote address at the 1994 RSA Security
Conference, Redwood City, CA]
Foreword
Two years ago I opened the first of these conferences.
Jim Bidzos invited me to "kick it off;" nothing so formal as a "keynote."
While I wore this same suit, I just sort of got up here to shoot the breeze
with a few of my friends and colleagues. No notes, just sort of "off-the-
cuff." He did not even tell me how long I could talk. As far as I know
there were no reporters present; nothing that I said got me in trouble.
After the morning session was over, Jim hosted a lunch for some of the
speakers and panelists. Whit Diffie sat beside me, with his notes, and
began to quiz me on my sources and authorities for my comments. He even
told me that some of my best stories were apocryphal (though he conceded me
the points that I made with them).
Well, I see the same friends, but there are far more colleagues. The
program is more formal, Diffie still has his pad and pencil, the press is
here, my remarks are styled as a "keynote," they are sufficiently arguable
that I need to choose my words very carefully, and I have a fixed time to
end. Prudence suggests that I use notes.
Introduction
Cryptography, the art of secret communication, is almost as old as writing.
Indeed, it has been suggested that, at least for a while, writing itself
was a relative secret. Certainly it was esoteric and its use was reserved
to an initiated elite.
Cryptography and recording and communicating technologies have played leap
frog through the pages of history. It is my thesis that both have changed
so radically during the nineteenth and twentieth centuries as to constitute
a new era.
On the recording and communicating side we have photography, telegraphy,
telephony, radio, phonography, cinema, television, and
telecommunications.hy, telephony, radio, cinema, television, and the
computer. Collectively, and even individually, these technologies
constitute a dramatic change in our ability to make a mark across time and
space.
We have seen a similar advance in our ability to conceal those records and
messages from all but a chosen few.
Modern cryptography has its origins between the two great wars of the
twentieth century. .It was driven as much by the use of radio on the
battlefield as by any other single influence, but there are an infinite
number of important recording and communicating applications that simply
cannot be done in clear text.
While more sparingly used and less well known, the advances in cryptography
have been no less dramatic than those in recording and communications.
I propose to consider five inventions of the twentieth century that have
defined modern cryptography and that set it apart from ancient or
traditional cryptography.
The impact of these technologies has been to simplify the use of codes,
reduce their cost, and increase by orders of magnitude the cost to a
cryptanalyst of recovering information protected by the codes.
What constitutes an invention or sets it apart from other inventions is
somewhat arbitrary. Some of the inventions that I propose to discuss could
be considered as a group of other inventions; the members of the group
might or might not be significant by themselves.
I have limited myself to a discussion of inventions rather than
accomplishments, and to cryptography rather than to cryptanalysis.
Many of the accomplishments of the century have been in cryptanalysis and
may have been greater than the inventions in cryptography. However,
greatness is in the eye of the beholder. Certainly all the inventions have
not been limited to cryptography.
For example, if cryptanalysts did not invent the modern computer, they
certainly gave it a major boost. They have lived to see the advantage that
it provides shift, with its scale, from them to the cryptographer.
Automated Encoding and Decoding
Modern cryptography begins in 1917 with the invention by Gilbert S. Vernam,
an employee of the American Telephone & Telegraph Company, of the Vernam
System.
Vernam used two paper tape readers, one for the message and the other for
the key. He added the two (bit-wise and modulo 2) to produce the
ciphertext.
Moreover, he used the standard information technology of his day to
automate the encoding and decoding of information.
Modern cryptography is automatic. Translation from plaintext to ciphertext
and back again is performed automatically, that is by a machine or
automaton.
While there may be a separate step, the conversion from one code to the
other is done by a machine rather than by a person.
Today that conversion can be done by almost any single user computer. With
appropriate controls and for some applications it can be done in a multi-
user computer.
Before computers, this encoding was done in special purpose machines. The
Enigma and Purple machines were both early and famous examples of such
machines.
The requirement to manually convert from natural language to secret codes
has always been a limitation. It tended to limit both the amount of traffic
encrypted and the complexity of the encoding schemes used.
Therefore, encryption machines of any kind increase the complexity and
effectiveness of the codes available.
At one level, the modern computer can be viewed as a general purpose code
conversion machine. That is, it converts information called input into a
new representation called output.
The relationship between the input and the output can be simple or complex,
obvious or obscure, public or secret, and reversible or irreversible.
If the conversion is complex, obscure, secret, and reversible, then the
computer can be viewed as an encryption machine.
But for want of a small amount of readily available software, all of the
hundred million general purpose computers in the world are encryption
engines of immense power.
At some price in performance, the relationship between input and output can
be arbitrarily complex and obscure and thus arbitrarily effective in
concealing the meaning of the output.
The cost of computer performance has been falling steadily and rapidly for
fifty years. It has now become so cheap that most capacity is not used for
the convenience of having it ready when it is wanted. The result is that
the use of secret codes can be viewed as almost free.
So cheap is automatic coding and encoding that some applications do it by
default and globally, concealing it completely from the user. Since the
difference in cost between public codes and secret codes is vanishing and
can be paid in a currency, computer cycles, that might otherwise be wasted,
secret codes can be used by default.
Independent Long Key Variable
The major weakness of Vernam's system was that it required so much key
material. This was compensated for by Lyman Morehouse who used two key
tapes of 1000 and 999 characters, about eight feet each in length, in
combination to produce an effective key tape of 999,000 characters,
effectively 8000 feet in length. Morehouse had used a long key.
Modern cryptography is tailored to a particular use by a key variable, or
simply a key. The key is a large integer that tailors the behavior of the
standard algorithm and makes it generate a cipher that is specific to that
number.
The requirement for secrecy is limited to this number. The problem of
protecting the data reduces to the simpler one of protecting the key.
Access to the cleartext requires access to the combination of the
ciphertext, the base mechanism, usually a computer and a program, and the
key.
Since the rest are readily available, the efficiency of any use depends
upon the fact that it is more expensive or difficult to obtain the key than
to obtain the protected data by other means.
All other things being equal, the longer the key, the more secure the
mechanism. Key length is a trade off against the complexity and the secrecy
of the algorithm.
The longer the key, the simpler and more obvious can be the mechanism or
algorithm.
If the key is as long as the message, statistically random in appearance,
and used only once (one-time pad), then such a simple and obvious mechanism
as modulo addition will still provide effective security.
For practical reasons, short keys and more complex mechanisms are
preferred.
Complexity Based Cryptography (The Data Encryption Standard)
In May 1973 the US National Bureau of Standards advertised in the Federal
Register for a proposal for an encryption mechanism to be employed as a
standard mechanism for all of the needs of the civilian sectors of the
government.
The ad stated that the successful proposal would be for a mechanism that
would be secure for at least five years in spite of the fact that the
mechanism would be public and published.
The resulting Data Encryption Standard was proposed by the IBM Corporation.
It was invented by a team led by Walter Tuchman and was based upon a
concept originated by Horst Feistel of IBM's Yorktown Research Laboratory.
This mechanism, which can be implemented on a chip and completely described
in a few 8.5"X11'' pages, changed the nature of cryptography forever.
The security of modern encryption mechanisms like the DES is rooted in
their complexity rather than in their secrecy.
While traditional encryption relied upon the secrecy of the mechanism to
conceal the meaning of the message, these modern mechanisms employ standard
and public algorithms.
These mechanisms are standard in the sense that they are of known strength
or have a known cost of attack. However, the trade-off is that their
effectiveness can not, must not, depend upon their secrecy.
Rather, it relies upon the complexity of the mechanism. The complexity of
modern ciphers is such that they can be effective even though most of their
mechanism is public.
The most well known, trusted, and widely used of all modern ciphers is the
Data Encryption Standard. Because of the intended breadth and duration of
the use of this cipher, the sponsors specified that it should be assumed to
be public.
Its effectiveness should rely upon the secrecy only of the key (see the
next section). It has been public for more than fifteen years, but its
effectiveness is such that trying all possible keys with known plain and
cipher text is still the cheapest practical attack.
[The DES belongs to a class of ciphers known as Feistel ciphers. These
ciphers are also known as block product ciphers. They are called block
ciphers because they operate on a fixed length block of bits or characters.
They are called product ciphers because they employ both substitution and
transposition.]
Automatic Key Management
The same key must exist at both ends of the communication. Historically,
keys were distributed by a separate channel or path than the one by which
the encrypted traffic passed.
The initial distribution and installation of the keys must be done in such
a way as not to disclose them to the adversary.
When this is done manually, it represents a significant opportunity for the
compromise of the system.
Because they were attempting to combine cryptography and computing in a
novel manner, Tuchman and his team understood this problem very well.
The products that they based upon the DES algorithm addressed it, in part,
by automating the generation, distribution, installation, storage, control,
and timely changing of the keys.
Their elegant system is described in two papers published in the IBM
Systems Journal Vol. 17(2) pp. 106-125 (1978) and covered by a number of
fundamental patents based upon it. [While NSA had automated some key
management operations, and while Rosenblum was awarded a patent for a "key
distribution center," these were ad hoc. This work is the first that
describes and implements a complete and integrated automatic system.]
The impact of this concept on the effectiveness, efficiency, and ease of
application of modern cryptography is immense. However, it may also the
least understood and appreciated.
For example, much of the analysis of the strength of the DES is made in the
context of the primitive DES. However, the DES rarely appears as a
primitive. Instead it appears in implementations which use it in such a way
as to compensate for its inherent limitations.
For example, automatic generation of the keys avoids the use of weak or
trivial keys. (the DES has four known weak keys and four semiweak keys.)
Since automatic key management systems permit so many keys, they also
reduce the exposure to "known plaintext" attacks.
History suggests that codes are most often broken because the user fails to
apply them with the necessary rigor and discipline, particularly when
choosing, distributing, and installing keys.
Automating of these steps provides much of the necessary discipline and
rigor.
Automatic key distribution and installation increases the effectiveness by
protecting the keys from disclosure during distribution, and by making the
system resistant to the insertion of keys known to attackers.
When keys are installed manually they become known to the human agent who
installs them. He is in a position to provide a copy of the key to others.
To the extent that this agent is vulnerable to coercion or bribery, the
system is weakened by this knowledge.
Therefore, the system may be strengthened by automatic mechanisms which
provide the agent with beneficial use of the key without granting him
knowledge of it.
For example, systems available from IBM and Motorola provide for the key to
be distributed in smartcards and automatically installed in the target
machine.
The key can be encrypted in the smartcard or destroyed by the installation
process. In either case, the agent can use it, but cannot copy it or give
it to another.
Just as the use of automata for encoding and decoding reduces the cost and
inconvenience of using secret codes, the use of automata for key management
reduces the cost and inconvenience of changing the keys frequently.
By changing the key frequently, e.g., for each, file, session, message, or
transaction, the value to an adversary of obtaining a key is reduced, and
the effectiveness of the mechanism is improved.
One way of looking at automated key management is that it increases the
effective length of the key, or makes it approach the length of the data
protected.
Asymmetric Key Cryptography
However, even though most of the key management can be automated, most such
systems require some prearrangement. In any-to-any communications in a
large open population, this requirement can quickly become overwhelming.
For example, in a population of two hundred people, the number of key pairs
and secret exchanges would be in the thousands with many opportunities for
keys to be compromised. Moreover, with traditional keys, the initial
distribution of keys must be done in such a way as to maintain their
secrecy, practically impossible in a large population.
These problems are addressed, in part, by public key, or asymmetric key,
cryptography. This mechanism was proposed by Whitfield Diffee, Martin
Hellman, and Ralph Merkle. It may be the single most innovative idea in
modern cryptography.
The best known and most widely used implementation is the RSA algorithm
invented by Ronald Rivest, Adi Shamir, and Leonard Adelman.
[In this mechanism the key has two parts, only one of which must be kept
secret. The two parts have the special property that what is encrypted with
one can only be decrypted with the other.
One half of the key-pair, called the private key, is kept secret and is
used only by its owner.
The other half, called the public key, is published and is used by all
parties that want to communicate with the private key owner.
It can be published and does not need to be distributed secretly.
Since the public key, by definition, is available to anyone, then anyone
can send a message to the owner that only he can read.]
With a minimum of pre-arrangement, this function provides the logical
analog of an envelope that can only be opened by one person. The larger the
communicating population, and the more hostile the environment, the greater
is its advantage over symmetric key cryptography.
This concealment from all but the intended recipient is the traditional use
of cryptography. However, asymmetric key cryptography has another use.
A message encrypted using the private key can be read by anyone with access
to the public key, but it could only have been encrypted by the owner of
the corresponding private key. This use is analogous to a digital
signature.
It provides confidence that the message originates where it appears to have
originated. Since if even a bit of the message is changed it will not
decrypt properly, this mechanism also provides confidence that the message
has not been either maliciously or accidentally altered.
In part, this is also true as between the two parties to a message that is
sent using symmetric key cryptography. That is, the recipient of the
message knows with a high degree of confidence that it originated with the
other holder of the key; he knows it, but he cannot prove it to another.
However, with asymmetric key cryptography, he can demonstrate it to a third
party. If the owner of the key pair has acknowledged the public part of the
key to the third party, then he cannot plausibly deny any message that can
be decrypted with it.
[The concept of the digital signature is such a novel concept as to easily
qualify as an invention on its own. However, it is so closely bound in
origin and literature to asymmetric key cryptography that I elect to simply
treat them as one.]
These two abstractions, the logical envelope and the logical signature, can
be composed so as to synthesize any and all of the controls that we have
ever been able to achieve by more traditional means.
They can be used for payments, contracts, testaments, and high integrity
journals and logs.
They provide us with a higher degree of security in an electronic
environment than we were ever able to achieve in a paper environment.
They provide protection in an open environment that is nearly as high as
that which we can achieve in an open one. The Impact of the Great
Inventions
The impact of these inventions is to provide us with secret codes that are
cheap enough to be used by default, and arbitrarily strong.
Given assumptions about the quantity of data to be protected, the length of
time that it must remain secret, its value to an adversary, and the
resources available to the adversary, it is possible to apply modern
cryptography in such a way as to be as strong as required.
While it is possible to state a problem in such a way as to defy such a
solution, it is difficult to identify such a problem in the real world.
That is, It is possible to specify so much data to be encrypted under a
single key, of such high value and which must remain safe for such a long
time that we cannot say with confidence that the mechanism can stand for
that time and cost.
For example, we cannot say with confidence how to encrypt several hundred
gigabytes worth several trillion dollars and keep it safe for a millennium.
On the other hand, we are not aware of any real problems that meet such a
specification.
Put another way, we can always ensure that the cost of obtaining the
information by cryptanalysis is higher than the value of the data or the
cost of obtaining it by alternative means.
While any code can be broken at some cost, modern codes are economically
unbreakable, at least in the sense that the cost of doing so can be made to
exceed the value of doing it.
A very small increase in the cost to the cryptographer can result in
astronomical increases in the cost to a potential adversary.
Perhaps just as important, these mechanisms are now sufficiently convenient
to use, that, within bounds, they can be widely and easily applied.
Given that the more data that is encrypted with a single mechanism, the
greater the value in breaking it, the more compromising information is
available to an adversary, and that the more a mechanism is used the
greater the opportunity for a compromising error in its use, we should
continue to apply cryptography only to data that can profit from its use.
On the other we need never again be inhibited from using it by issues of
cost or convenience.
Cryptography and Government Policy
It should be obvious to a qualified observer that, announcements here to
the contrary not withstanding, we are losing the battle for security and
privacy in the computerized and networked world.
We could have secret codes imbedded in all software of interest for free.
This assertion assumes only that all such software is produced by those
represented here, who have already paid for licenses and absorbed much of
the necessary development cost, and that the cost of a marginal cycle on
the desktop approaches zero.
That we do not, is the result of ambivalent government policy. While one
agency of government has sponsored the use of standard cryptography,
another has tried to undermine confidence in those standards.
While one agency has asserted that public standards are essential, another
has sponsored secret ones, and a third has used public funds to further
such secret standards.
While one agency has insisted that trusted codes are essential to world
prosperity, another has imposed restrictions on their export and undermined
confidence in those that are exported.
While one agency recognizes that national security depends upon world
prosperity, another believes that signals intelligence is more important.
Those of you who have seen my comments in Risks, sci.crypt , and the
Communications of the ACM, know my position.
It is that the prime mover behind all of these initiatives is NSA, that
their motive is the preservation of their jobs and power by protecting the
efficiency of signals intelligence, that their strategy is to discourage by
every means that they can get away with all private and most commercial use
of cryptography. That they have infiltrated the departments of State and
Commerce and the White House staff, and that they are using the Department
of Justice.
While they know that they cannot be fully successful, they also know that
they do not have to be.
Nor is this simply paranoia on my part. It is the only explanation that
accounts for all of the government's actions. It also meets the tests
proposed by Machiavelli, Willie Sutton and "Deep Throat."
While most of the government confesses that cryptography is essential to
personal privacy in the modern era, the administration is not prepared to
admit that even the current sparse use is consistent with the government's
responsibility to preserve public order.
Let me stress that the problem is government policy, not public policy and
not administration or congressional policy. This policy has been made in
secret and has been resistant to public input.
It is the policy of the bureaucracy and not of any individuals. I know most
of the players in the development of this policy. I know none that are
pursuing a personal agenda, like the results, or are proud of their roles
in it.
They are simply doing the best that they know how in the face of agency
momentum, administration consent, and the absence of congressional
guidance. However, the momentum behind these policies is such that the good
intentions and professionalism of the individuals is not sufficient to
resist it.
While the administration has aligned itself with the initiatives, it is not
their author. While the initiatives have sponsors within the
administration, they were here before the administration and they expect to
be here when it is gone.
They believe that the policy is important and that the administration is
not.
While some committees of the congress have held hearings on the issues and
even decried the arbitrary actions of the bureaucracy, their hearings
always conclude with executive sessions with the NSA and no legislative
initiatives to curb the excesses.
Forgive me a closing political observation not intended to be partisan.
This government is too large, over-zealous and under-effective. It is
committed to nothing so much as its own survival.
It may be too late to influence it, but if it is not influenced, not only
will we not enjoy the fruits of modern cryptography, but we may not enjoy
those of telecommunications, trade, our labors, or even those of freedom.
Bibliography
Ehrsam, W. F., Matyas, S. M., Meyer, C. H., and Tuchman, W. L., "A
Cryptographic Key Management System for Implementing the Data Encryption
Standard," IBM Systems Journal Vol. 17(2) pp. 106-125 (1978).
Kahn, D., The Codebreakers, Macmillan Co., New York (1967).
Matyas, S. M., Meyer, C. H., "Generation, Distribution, and Installation of
Cryptographic Keys," IBM Systems Journal Vol. 17(2) pp. 126-137 (1978).